package com.yyysj.common.core.domain;

import java.util.ArrayList;
import java.util.List;
import com.yyysj.common.core.enums.ResultCode;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
public class TableDataInfo {

    private long total; // 总记录数

    private List<?> rows; // 列表数据

    private int code; // 状态码

    private String msg; // 消息内容

    // 未查出任何数据时调用
    public static TableDataInfo empty() {
        TableDataInfo rspData = new TableDataInfo();
        rspData.setCode(ResultCode.SUCCESS.getCode());
        rspData.setRows(new ArrayList<>());
        rspData.setMsg(ResultCode.SUCCESS.getMsg());
        rspData.setTotal(0);
        return rspData;
    }

    // 查出数据时调用
    public static TableDataInfo success(List<?> list,long total) {
        if (list == null || list.size() <= 0 || total <= 0) {
            return empty();
        }

        TableDataInfo rspData = new TableDataInfo();
        rspData.setCode(ResultCode.SUCCESS.getCode());
        rspData.setRows(list);
        rspData.setMsg(ResultCode.SUCCESS.getMsg());
        rspData.setTotal(total);
        return rspData;
    }
}
